package com.util
{
	public class ValidarRut
	{
		//public function Validar(numero:Number,digitoVerificador:String):Boolean
		public function Validar(numero:String,digitoVerificador:String):Boolean
		{
                var Numeros:Array=new Array(2,3,4,5,6,7);
                //var numeroTexto:String=new String(numero.toString());
                var numeroTexto:String= numero;
                
                var x:int;
                var numeroActual:int=0;
                var Contador:Number=0;
                var digitoAVerificar:String;
                for ( x=numeroTexto.length-1 ;x>=0;x--){
                    if (numeroActual==Numeros.length)
                        numeroActual=0;
                    Contador+=(Number(numeroTexto.charAt(x))*Number(Numeros[numeroActual++]));
            
                }
                switch(11-(Contador%11))
                {
                    case 11:
                        digitoAVerificar="0";
                        break;
                    case 10:
                        digitoAVerificar="K";
                        break;
                    default:
                        digitoAVerificar=String(11-(Contador%11));
                        break;
                }
                if (digitoVerificador==digitoAVerificar)
                    return true;
                else
                    return false;
                
            }
		
		public function esFormatoRut(rutCompleto:String):Boolean{
			var rut:String = rutCompleto;
			var rutArray:Array =  rut.split('-');
			var rutn:String = new String(rutArray[0]); 
			var dv:String = new String(rutArray[1]); 
			if (rutn.indexOf("K")==-1 && rutn.indexOf("k")==-1){
				if (dv.length == 1){
					return true		
				}else{
					return false
				}
				
				
			}else{
				return false
			}
		}
		
		public function Validar2(rutcompleto:String):Boolean
		{
			var Numeros:Array=new Array(2,3,4,5,6,7);
			//var numeroTexto:String=new String(numero.toString());
			var largo:Number=rutcompleto.length;
			var digitoVerificador:String=rutcompleto.substr(largo-1,1);
			var numero:String=rutcompleto.substr(0, largo-2);
			var numeroTexto:String= numero;                
			
			var x:int;
			var numeroActual:int=0;
			var Contador:Number=0;
			var digitoAVerificar:String;
			for ( x=numeroTexto.length-1 ;x>=0;x--){
				if (numeroActual==Numeros.length)
					numeroActual=0;
				Contador+=(Number(numeroTexto.charAt(x))*Number(Numeros[numeroActual++]));
				
			}
			switch(11-(Contador%11))
			{
				case 11:
					digitoAVerificar="0";
					break;
				case 10:
					digitoAVerificar="K";
					break;
				default:
					digitoAVerificar=String(11-(Contador%11));
					break;
			}
			if (digitoVerificador==digitoAVerificar)
				return true;
			else
				return false;
			
		}


	}
}